<!-- This HTML file has been created by texi2html 1.30
     from bull11a.tex on 30 January 1995 -->

<TITLE>GNU's Bulletin, vol. 1 no. 11a, November 1991 revision</TITLE>
<H1>GNU's Bulletin, vol. 1 no. 11a, November 1991 revision</H1>
<P>
<HR>
<P>
The GNU's Bulletin is the semi-annual newsletter of the
Free Software Foundation, bringing you news about the GNU Project.
<PRE>
Free Software Foundation, Inc. 		 Telephone: (617) 876-3296 <BR>
675 Massachusetts Avenue 		 Electronic mail: gnu@prep.ai.mit.edu <BR>
Cambridge,   MA     02139     USA 		
</PRE>
<BLOCKQUOTE>
This edition contains minor revisions--the order form now lists X11r5
instead of X11r4, although you can still order X11r4.
</BLOCKQUOTE>
<P>
<HR>
<P>
<H1><A NAME="SEC4" HREF="bull11a_toc.html#SEC4">GNU's Who</A></H1>
<P>
<B>Michael</B> <B>Bushnell</B> is working on the GNU operating system and
maintains GNU <CODE>tar</CODE>.  <B>Jim</B> <B>Blandy</B> is preparing
GNU Emacs 19, and <B>Joseph Arceneaux</B> is implementing active
regions for a future release of GNU Emacs.  <B>Roland</B>
<B>McGrath</B> is polishing the C library and maintains GNU
<CODE>make</CODE> as well as the GNU Emacs 19 Lisp library.<P>
<B>Tom Lord</B> is taking over development of Oleo, the GNU spreadsheet.
<B>Brian Fox</B> is maintaining various programs that he has written,
including the <CODE>readline</CODE> library, the <CODE>makeinfo</CODE> and
<CODE>info</CODE> programs, BASH, and GNU <CODE>finger</CODE>.  <B>Jan Brittenson</B>
is working on the C interpreter.<P>
<B>Melissa Weisshaus</B> is editing documentation and will work on
the GNU Utilities manual.  <B>Kathy Hargreaves</B> and <B>Karl Berry</B>
are making fonts, developing various utilities for dealing with
them, and also working on Ghostscript.<P>
<B>Noah Friedman</B> is our system administrator.  <B>Opus Goldstein</B>
continues to run the business end of FSF, with <B>Gena Lynne</B>
<B>Bean</B> assisting in the office.  <B>Spike MacPhee</B> helps RMS
with various administrative tasks.  <B>Robert J.</B> <B>Chassell</B>,
our Treasurer, is working on his introduction to programming in Emacs
Lisp, in addition to his many other Foundation duties.<P>
<B>Richard Stallman</B> continues as a volunteer who does countless tasks,
including refining the C compiler, Emacs, etc., and their
documentation.  Volunteer <B>Walter</B> <B>Poxon</B> coordinates
the GNU Project's volunteer programmers.  And, volunteer <B>Len
Tower</B> remains our electronic JOAT (jack-of-all-trades), handling
mailing lists and gnUSENET, information requests, et al.<P>
<HR>
<P>
<H1><A NAME="SEC5" HREF="bull11a_toc.html#SEC5">GNU's Bulletin</A></H1>
<P>
Copyright (C) 1991 Free Software Foundation, Inc.
<P>
Written by: Noah Friedman, Robert J. Chassell, Richard Stallman,
<BLOCKQUOTE>
and Leonard H. Tower Jr.
</BLOCKQUOTE>
<P>
Illustrations: Etienne Suvasa
<P>
Japanese Edition: Mieko Hikichi and Nobuyuki Hikichi
<P>
<BLOCKQUOTE>
Permission is granted to anyone to make or distribute verbatim copies of
this document as received, in any medium, provided that the copyright
notice and permission notice are preserved, and that the distributor
grants the recipient permission for further redistribution as permitted
by this notice.</BLOCKQUOTE>
<P>
<H1><A NAME="SEC6" HREF="bull11a_toc.html#SEC6">What Is the Free Software Foundation?</A></H1>
<P>
The Free Software Foundation is dedicated to eliminating restrictions on
copying, redistribution, understanding, and modification of computer
programs.  We do this by promoting the development and use of free
software in all areas of computer use.  Specifically, we are putting
together a complete integrated software system named "GNU" (GNU's Not
Unix) that will be upwardly compatible with Unix.  Some large parts of
this system are already working, and we are distributing them
now.<P>
The word "free" in our name refers to two specific freedoms: first,
the freedom to copy a program and give it away to your friends and
co-workers; and second, the freedom to change a program as you wish, by
having full access to source code.  Furthermore, you can study the
source and learn how such programs are written.  You may then be able to
port it, improve it, and share your changes with others.<P>
Other organizations distribute whatever free software happens to be
available.  By contrast, FSF concentrates on development of new free
software, working towards a GNU system complete enough to eliminate the
need to purchase a proprietary system.<P>
Besides developing GNU, the Foundation has several secondary functions:
producing tapes and printed manuals for GNU software, carrying out
distribution, and accepting gifts to support GNU development.  We are
tax exempt; you can deduct donations to us on your tax returns.  Our
development effort is funded from both donations and distribution fees.
Note that the distribution fees purchase just the service of
distribution: you never have to pay anyone license fees to use GNU
software, and you always have the freedom to make your copy from a
friend's computer at no charge (provided your friend is willing).<P>
The Foundation also maintains a Service Directory; see "Free Software
Support" below for details.
<P>
After we create our programs, we continually update and improve them.
We release between 2 and 20 updates a year for each program.  Doing this
while developing new programs takes a lot of work, so any donations of
pertinent source code and documentation, machines, labor, or money are
always appreciated.<P>
The board of the Foundation is: Richard Stallman, President; Robert J.
Chassell, Treasurer; Gerald J. Sussman, Harold Abelson, and Leonard H.
Tower Jr., Directors.<P>
<BLOCKQUOTE>
<EM>"As we enjoy great advantages from the inventions of others, we
should be glad of an opportunity to serve others by any invention of
ours."</EM></BLOCKQUOTE>
<P>
--Benjamin Franklin
<P>
<H1><A NAME="SEC7" HREF="bull11a_toc.html#SEC7">What Is Copyleft?</A></H1>
<P>
In the previous section entitled "What Is the Free Software
Foundation?" we state that "you never have to pay anyone license fees
to use GNU software, and you always have the freedom to make your copy
from a friend's computer at no charge."  What exactly do we mean by
this, and how do we make sure that it stays true?<P>
The simplest way to make a program free is to put it in the public
domain.  Then people who get it from sharers can share it with
others.  But this also allows bad citizens to do what they like to do:
sell binary-only versions under typical
don't-share-with-your-neighbor licenses.  They would thus enjoy the
benefits of the freeness of the original program while withholding
these benefits from the users.  It could easily come about that most
users get the program this way, and our goal of making the program free
for <EM>all</EM> users would have been undermined.<P>
To prevent this from happening, we don't normally place GNU programs in
the public domain.  Instead, we protect them by what we call
<DFN>copylefts</DFN>.  A copyleft is a legal instrument that makes everybody
free to copy a program as long as the person getting the copy gets with
it the freedom to distribute further copies, and the freedom to modify
their copy (which means that they must get access to the source code).
Typical software companies use copyrights to take away these freedoms;
now software sharers use copylefts to preserve these freedoms.<P>
The copyleft used by the GNU Project is made from a combination of a
copyright notice and the <DFN>GNU General Public License</DFN>.  The
copyright notice is the usual kind.  The General Public License is a
copying license which basically says that you have the freedoms we want
you to have and that you can't take these freedoms away from anyone
else.  (The actual document consists of several pages of rather
complicated legalbol that our lawyer said we needed.)  The complete
license is included in all GNU source code distributions and many
manuals.  We will send you a copy on request.<P>
We encourage others to copyleft their programs using the General Public
License; basically programs only need to include a few sentences stating
that the license applies to them.  Specifics on using the License
accompany it, so refer there for details.<P>
<H1><A NAME="SEC8" HREF="bull11a_toc.html#SEC8">A Small Way to Help Free Software</A></H1>
<P>
If you find that GNU software has been helpful to you; in particular, if
you have benefited from having sources freely available, please help
support the spread of free software by telling others.  For example, you
might say in published papers and internal project reports:
<P>
<BLOCKQUOTE>
"We were able to modify the fubar utility to serve our particular needs
because it is free software.  As a result, we were able to finish the
XYZ project six months earlier."</BLOCKQUOTE>
<P>
Let users, management and friends know!  And send us a copy.  Thanks!<P>
<H1><A NAME="SEC9" HREF="bull11a_toc.html#SEC9">GNUs Flashes</A></H1>
<P>
<UL>
<P>
<LI>
<B>New library license</B>
<P>
We recently published a new alternative Library General Public License
to cover certain GNU libraries.  This license permits linking the
libraries into proprietary executables on certain conditions.<P>
The new library license actually represents a strategic retreat.  We
would prefer to insist as much as possible that programs based on GNU
software must themselves be free.  However, in the case of libraries, we
found that insisting they be used only in free software tended to
discourage use of the libraries, rather than encourage free
applications.<P>
So, while we hope the new library license will help promote the
development of free libraries, we regret that it was
necessary.<P>
Version 2 of the ordinary General Public License was released along
with the Library license.  The changes are mostly clarifications, but
there are new provisions to deal with the effect of software patents.
These provisions make it possible to limit the distribution of a
particular program to countries where no patents apply.<P>
<LI>
<B>Kernel</B>
<P>
We have decided to use the Mach message-passing kernel being developed
at CMU.  The latest version of Mach is a microkernel that contains no
AT&#38;T code.  (A microkernel provides no high-level functionality, such as
file systems and signals.)  Earlier, nonfree versions of Mach were
covered by export restrictions, but there are no restrictions
now.<P>
Mike Bushnell is writing a set of servers to run on top of Mach to
provide a full GNU OS.  It is far from finished (see "GNU Status
Report").<P>
<LI>
<B>Improved binary file interface</B>
<P>
Cygnus Support has written BFD, a set of routines for reading and
writing binary files.  Using the BFD library, GDB version 4, and
eventually both binutils and GAS, will read and write a variety of
object file and library formats, and will read assorted core file
formats, such as a.out, b.out (i960), and various kinds of COFF.<P>
<LI>
<B><CODE>g++</CODE></B>
<P>
Version 1.40 of GNU C<CODE>++</CODE> is now available.  The only major
change is that this version outputs debugging info which is again
consistent with what GDB version 3.5 expects.  It is the same that
version 1.37.x emits.<P>
<LI>
<B>C Library</B>
<P>
The GNU C library is in a limited distribution alpha test release.  We
hope to have a beta test available soon.  The library is POSIX.1
compliant and has most of the functions specified in POSIX.2 draft 11.
It is upward compatible with the 4.3 BSD C library and includes many
System V functions, plus GNU extensions.<P>
<LI>
<B>Fortran front end for GCC</B>
<P>
A Fortran front end for GCC, written by Craig Burley, is very nearly
finished.  He is integrating and making changes to the back end to
finish the compiler itself.  Current plans (and the current compiler)
call for using the same library functions used by <CODE>f2c</CODE>, allowing
<CODE>f2c</CODE>-compiled and <CODE>gf77</CODE>-compiled subprograms to be linked
together and run.  (Please do not ask for more information on Fortran
until we announce its release.)<P>
<LI>
<B>A Russian Connection?</B>
<P>
The GNU Project seems to have grown a branch in Russia.
Computer exporter Anwar Fancy plans to sell thousands of computers in the
Soviet Union, and hopes that the GNU system will make this more feasible
by saving the purchasers multi-user Unix license fees.  He has hired ten
programmers in Moscow, and is now equipping them with Unix systems, so
that they can work on parts of the GNU system.  The software is to be
donated to FSF.
Their first project may be a desktop system.</UL>
<P>
<H1><A NAME="SEC10" HREF="bull11a_toc.html#SEC10">Free Software Support</A></H1>
<P>
The Free Software Foundation develops and distributes freely available
software.  Our goal is to help computer users as a community.  We
envision a world in which software is freely redistributable.  This
means software will be sold at a competitive market price rather than a
monopolistically established price; often it will be given away.  We
see programmers as providing a service, much as doctors and
lawyers now do--both medical knowledge and the law are freely
redistributable entities for which the practitioners charge a
distribution and service fee.<P>
We maintain a list of people who offer support and other consulting
services, called the GNU Service Directory.  It is in the file
<TT>`etc/SERVICE'</TT> in the GNU Emacs distribution and <TT>`SERVICE'</TT> in
the GCC distribution.  Contact us if you would like a copy or wish to be
listed in it.<P>
If you find a deficiency in any GNU software, we want to know.  We
have many Internet mailing lists for announcements, bug reports,
and questions.  They are also gatewayed into USENET news as the
<CODE>gnu.*</CODE> newsgroups.<P>
If you have no Internet access, you can receive mail and USENET news via
UUCP.  Contact either a local UUCP site, or UUNET (which can set up a
UUCP connection at a modest rate) at
<CODE>info@ftp.uu.net</CODE>:<PRE>
UUNET Communications Services,
3110 Fairview Park Drive -- Suite 570,
Falls Church, VA   22042    Phone: (703) 876--5050
</PRE>
When we receive a bug report, we will usually try to fix the problem in
order to make the software better.  While our bug fixes may seem like
individual assistance, they are not.  Our task is so large that we must
focus on that which helps the community as a whole, such as developing
and maintaining software and documentation.  We do not have the resources
to help individuals.  If your bug report does not evoke a solution from
us, you may still get one from the many other users who read our bug
report mailing lists.  Otherwise, use the Service Directory.<P>
So, please do not ask us to help you install the software or figure out
how to use it--but do tell us how an installation script does not work
or where the documentation is unclear.<P>
<H1><A NAME="SEC11" HREF="bull11a_toc.html#SEC11">Copyrighted Programming Languages</A></H1>
<P>
by Richard Stallman
<P>
The GNU project has produced one of the best C compilers now in
existence.  The reason I decided to write a C compiler, rather than
designing a new, completely clean language, is that C is the language
users' programs are written in.  For a Unix-like system, a compiler for
C is absolutely essential.<P>
If a new language becomes equally essential for a useful computer
system, will we be allowed to write a compiler for it?  Not if we want
people in Europe to use the compiler.  On May 15, the European Community
adopted a new directive for software copyright.  It establishes not
only copyrighted user interfaces, but also copyrighted protocols,
copyrighted data formats, and copyrighted programming languages.<P>
Here is what the European Community law says about interfaces:<P>
<BLOCKQUOTE>
Whereas for avoidance of doubt it has to be made clear that only the
expression of a computer program is protected and that ideas and principles
which underlie any elements of a program, including those which underlie
its interfaces, are not protected by copyright under this directive;</BLOCKQUOTE>
<P>
Nothing prevents the details of an interface--as opposed to the
underlying ideas--from being copyrighted.<P>
The Legal Affairs Committee of the European Parliament recommended
adding these words to solve this problem for certain kinds of
interfaces:<P>
<BLOCKQUOTE>
Whereas, these unprotectible items include, for example, protocols
for communication, rules for exchanging or mutually using
information that has been exchanged, formats for data, and the
syntax and semantics of a programming language;</BLOCKQUOTE>
<P>
This amendment was rejected after serious debate in which the
conservative party particularly opposed it.  The importance given to the
question shows that it was regarded as a substantive change--that
Parliament believes the law as written permits copyright on the
protocols, formats, and languages.<P>
The principal supporters of these broad and dangerous monopolies were a few
large computer companies: IBM, Digital, Apple, and Siemens.  (Only one of
them is a European company.)  Many smaller companies formed the European
Committee for Interoperable Systems to lobby against interface monopolies,
but had little success.<P>
What about the United States?<P>
Ashton-Tate is once again pushing its case for a copyright on the
programming language used in DBase.  Last winter, the judge ruled that
the copyright on DBase was invalid because Ashton-Tate had failed to
inform the copyright office that part of the program was copied from an
earlier, public domain program written at JPL.  It turns out that the
"part" in question was the programming language--not part of the
program at all!<P>
Later, the judge reversed his own decision.  The case is now
proceeding.<P>
The latest version of the System V Interface Definition claims that the
interface is copyrighted.  Adobe says the Postscript language is
copyrighted.  You can bet that IBM, Digital, and Apple are telling Congress
loud and clear that programming languages should be copyrighted.  And they
will point to the European law as proof this is sound policy.<P>
So, the next time you adopt a new language, will we be allowed to add
support for it in the GNU compiler?  Not in Europe, and probably not in the
US either.<P>
Since surveys show most programmers disapprove of these restrictions, most
likely you do too.  The question is whether you want to do anything about
it.  You can speak up and have an effect on the decision, or you can do
nothing and let IBM, Digital, and Apple do all the talking.<P>
The FSF is doing what it can.  We joined the League for Programming
Freedom as an institutional member, as seven companies have also done.
Some of the FSF staff number among the 600 individual League members.
But, it takes more than 600 people to win this battle.  So, the next
step is up to you.<P>
From the League membership form:<P>
<BLOCKQUOTE>
The League for Programming Freedom is a grass-roots organization of
professors, students, businessmen, programmers and users dedicated to
bringing back the freedom to write programs.  The League is not opposed to
the legal system that Congress intended--copyright on individual programs.
Our aim is to reverse the recent changes made by judges in response to
special interests.<P>
Membership dues in the League are $42 per year for programmers, managers
and professionals; $10.50 for students; $21 for others.<P>
If you have any questions, please write to the League, phone (617)
243-4091, or send Internet mail to <CODE>league@prep.ai.mit.edu</CODE>.</BLOCKQUOTE>
<P>
To join, please send a check and the following information to:<BR>
League for Programming Freedom, 1 Kendall Square #143, P.O. Box 9171,<BR>
Cambridge, MA 02139<P>
<UL>
<P>
<LI>
Your name and phone numbers (home, work or both).<P>
<LI>
The address for League mailings, a few each year (please indicate
whether it is your home address or your work address).<P>
<LI>
The company you work for, and your position.<P>
<LI>
Your email address, so the League can contact you for political action.
(If you don't want to be contacted for this, please say so, but please
give your email address anyway.)<P>
<LI>
Please mention anything about you which would enable your endorsement of
the LPF to impress the public.<P>
<LI>
Please say whether you would like to help with LPF activities.</UL>
<P>
<BLOCKQUOTE>
<EM>"If I have seen farther, it is by standing on the shoulders of
giants."</EM></BLOCKQUOTE>
<P>
--Isaac Newton
<P>
<H1><A NAME="SEC12" HREF="bull11a_toc.html#SEC12">AT&#38;T Threatens Users of X Windows</A></H1>
<P>
by Richard Stallman
<P>
This spring, AT&#38;T sent threatening letters to every member of the X
Consortium, including MIT, saying they need to pay royalties for the X
Window server.  This is because AT&#38;T has patented the use of "backing
store" in a multiprocessing window system (patent number 4,555,775).
MIT is looking into how to fight AT&#38;T in court if necessary, but we
don't know whether this can succeed.<P>
Meanwhile, Cadtrak continues to demand royalties from the users of X
Windows for using exclusive-or to write on the screen, which is covered by
patent number 4,197,590.<P>
The GNU system won't be terribly useful if it can't have X Windows.  But
that isn't the only essential system feature which is in danger.  Emacs
is threatened by IBM patent number 4,674,040 which covers "cut and
paste between files" in a text editor.  Many Emacs features are
threatened by patent number 4,458,311, which covers "text and numeric
processing on same screen."  Patent
4,398,249 covering the general spreadsheet technique known as "natural
order recalc" stops us from using it in GNU software.<P>
There is little the FSF itself can do about these threats.  Fighting
just one patent in court would use up all our funds.  So we have added a
provision to version 2 of the GPL so that we can prohibit distribution
of one of our programs in certain countries if it is covered by patents
there.  Most likely, one of those countries will be the United
States.<P>
Beyond that, we have joined the League for Programming Freedom, which is
trying to get patents out of the software field.  If you develop
software for wide use, chances are you, too, will find you can't do your
work without infringing these patents.  Not to mention the thousands of
other patents that apply to software.  Doesn't it make sense for you to
join the League for Programming Freedom?<P>
<H1><A NAME="SEC13" HREF="bull11a_toc.html#SEC13">Project Gutenberg</A></H1>
<P>
by Michael S. Hart, Director<BR>
Project Gutenberg National Clearinghouse for Machine Readable Texts
<P>
The purpose of Project Gutenberg is to encourage the creation and
distribution of English language electronic texts.  We prefer to get the
texts in a pure ASCII format so they would be most easily converted to
use in various hardware and software.  An ASCII file will also be made
available in various markup formats as it is used in various
environments.  However we accept files in <EM>any</EM> format, and will do our
best to provide them in all.<P>
We assist selecting hardware and software as well as in their
installation and use.  We also assist in scanning, spelling checkers,
proofreading, etc.  Our goal is to provide a collection of 10,000 of the
most used books by the year 2001, and to reduce, and we do mean reduce,
the effective costs to the user to a price of approximately one cent per
book, plus the cost of media and of shipping and handling.  Thus we hope
the entire cost of libraries of this kind will be about $100 plus the
price of the disks, CDROMs and mailing.  Currently the price of making
CDROMs is said to be about $500 for mastering plus $2 per copy.  I have
it on fairly good authority that these prices are negotiable.<P>
To create such a library would take less than one out of ten of a
conservatively estimated 100,000 libraries in the U.S. alone: if each
created one full text.  If all the libraries co-operated, it would be
less than 10% of a volume per library.  If there were 10 members of each
library creating electronic texts, then each member only has to do 1% of
a single book to create a truly public library of 10,000 books which
would each be usable on the 100 million computers available today.<P>
So far most electronic text work has been carried out by private,
semi-private or incorporated individuals, with several library or
college collections being created, but being made mostly from works
entered by individuals on their own time and expense.  This labor has
largely been either one of love, or one made by those who see future
libraries as computer searchable collections which can be transmitted
via disks, phone lines or other media at a fraction of the cost in
money, time and paper as in present day paper media.  These electronic
books will not have to be rebound, reprinted, reshelved, etc.  They
will not have to be reserved or restricted to use by one patron at a
time.  All materials will be available to all patrons from all
locations.<P>
The use of this type of library will benefit even more greatly in the
presence of librarians, as the amount of information shall be so
much greater than that available in present day libraries that the
patron will benefit even more greatly than today in their pursuit of
knowledge.<P>
So, we call on all interested parties to get involved with the creation
and distribution of electronic texts, whether it's a commitment to
typing, scanning, proofreading, collecting, or whatever you prefer.<P>
Please do not hesitate to send any e-texts you might find to this
address.  If you prefer sending disks, a mailing address follows.<P>
<PRE>
Michael S. Hart, 405 West Elm St., Urbana, Il  61801
Please include a SASLE and/or donation.
</PRE>
<P>
The easiest way for you to find out about Project Gutenberg is to
subscribe via the Gutnberg listserver.  To do this send the following
message to <CODE>listserv@uiucvmd.bitnet</CODE>:<PRE>
SUB GUTNBERG YOUR NAME 		 (Your name must have at least two words)
</PRE>
Please don't hesitate to ask for specific information so it is included
in the Gutnberg mailings.  Please send these question messages
separately from your subscription message.<P>
<PRE>
Bitnet: <CODE>hart@uiucvmd</CODE> 		 Internet: <CODE>hart@vmd.cso.uiuc.edu</CODE>
</PRE>
<P>
(The Gutenberg server is at <CODE>gutnberg@uiucvmd.bitnet</CODE>.  (Note
spelling.)  The Internet address is
<CODE>gutnberg@vmd.cso.uiuc.edu</CODE>---the server only recognizes
subscription commands, others are routed to me.)<P>
We hope to be thanking you soon for your participation.<P>
<H1><A NAME="SEC14" HREF="bull11a_toc.html#SEC14">GNU Project Status Report</A></H1>
<P>
<UL>
<LI>
<B>GNU OS Work: The Hurd</B>
<P>
We have begun development of the kernel-related aspects of the GNU
Operating System.  This job consists of writing a set of servers, called
the GNU Hurd, that run on top of the Mach 3 microkernel from CMU.  The
Mach microkernel provides a task abstraction, with multiple threads
within a single task, and powerful IPC and virtual memory
systems.<P>
The Hurd consists of the filesystems, the terminal driver, the process
server, the network protocol servers, and a few minor servers.
The filesystems use a separate Mach task for each mounted filesystem,
and provide a superset of Unix functionality.  Unprivileged users will
be able to add filesystems of their own design to the directory tree in
a secure manner.  Mike Bushnell has written an implementation of the BSD
Fast File System and is now debugging it.  This implementation provides
access to files as shared memory, which permits faster access, and if
directly used by <CODE>stdio</CODE> in the C library, eliminates a data
copy in a large number of I/O intensive programs.  A future release of
the GNU C library will provide such support.<P>
Eventually, we will implement other filesystems, including traditional
ones, like NFS, as well as non-traditional ones such as transparent
access to FTP, <CODE>tar</CODE> and <CODE>ar</CODE> archives.<P>
The Hurd terminal driver looks like a file server to user programs, but
it supports a greater variety of <CODE>ioctl</CODE> calls as well as providing
both BSD and POSIX terminal functionality.  The terminal driver will
support terminals layered on serial lines, network ports, and other
channels.<P>
The process server offers a process abstraction; it provides process and
host id's, sends signals to other processes, fetches information for
ps-like programs, and so on.  The server's primary purpose is to
function as an information repository; the system call interpreter
handles complicated aspects of signal delivery.<P>
Initially, the GNU system will offer only one network protocol server,
which will provide local domain sockets (called the `Unix domain' in
BSD).  Eventually, we will add a TCP/IP implementation, with major
portions of the code borrowed from the BSD implementation.<P>
Source compatibility with BSD will be provided by the GNU C Library.
In addition, binary compatibility will be provided on some machines
using the system call emulation facilities of Mach.<P>
The system is intended to be source compatible with 4.4
BSD, and POSIX.1 compliant (when used in conjunction with the GNU C
Library).  Binary compatibility will be provided on some systems.
We have a mailing list for discussion of the design of Hurd.
Experts in OS design and seasoned Unix wizards are welcome to assist in
hashing out the details of the interface.<P>
<LI>
<B>GNU Emacs</B>
<P>
GNU Emacs 18.57 is the current version.  The undo facility has been
completely rewritten and now holds unlimited data temporarily, and a
user-specified amount for the long term.<P>
Berkeley is distributing GNU Emacs with the 4.3 BSD distribution, and
numerous companies distribute it also.<P>
Emacs 18 maintenance continues for simple bug fixes.  Version 19
approaches release, counting among its new features: before and
after change hooks, source-level debugging of Emacs Lisp programs, X
selection processing (including clipboard selections), scrollbars,
support for European character sets, floating point numbers, per-buffer
mouse commands, X resource manager interfacing, mouse-tracking,
Lisp-level binding of function keys, multiple X windows (`screens' to
Emacs), a new input system--all input now arrives in the form of Lisp
objects--and buffer allocation, which uses a new mechanism capable of
returning storage to the system when a buffer is killed.<P>
Thanks go to Alan Carroll and the people who worked on Epoch for
generating initial feedback to a multi-windowed Emacs.<P>
Features being considered for later releases of Emacs include:
associating property lists with regions of text in a buffer;
multiple fonts, color, and pixmaps defined by those properties;
different visibility conditions for the regions, and for various windows
showing one buffer; hooks to be run if point or mouse moves outside a
certain range; incrementally saving undo history in a file; static menu
bars; and better pop-up menus.<P>
<LI>
<B>Shells</B>
<P>
Brian Fox has released version 1.08 of the Bourne Again SHell (BASH),
which includes an extended emulation of the Korn shell.  It has job
control, and both Emacs-style and <CODE>csh</CODE>-style command history.
Version 1.08 fixes a number of bugs and has more builtins.<P>
There is a good chance that the <CODE>csh</CODE> from BSD will be declared
free software by Berkeley, so we will not need to write that.  In any case,
BASH rather than <CODE>csh</CODE> will be the default shell in the GNU
system.<P>
<LI>
<B>GNU Debugger</B>
<P>
The GNU source-level C and C<CODE>++</CODE> debugger, GDB, is now being
distributed along with the GNU C Compiler.<P>
GDB Version 3.5 is now released.  Version 4 is being tested and should
be released soon.  Version 3 runs on BSD 4.2 and 4.3 and on System
V.<P>
GDB includes a facility for debugging across a serial line, together
with a stub that can be included in a standalone program to communicate
across the line with GDB.  This feature is for kernel debugging.  We
hope eventually to be able to debug across an Ethernet.<P>
New features in version 4 include watchpoints, support for C<CODE>++</CODE>
exception handling, cross-debugging (debugging one machine from a
dissimilar machine), easier porting to different binary file formats
(see "GNUs Flashes"), and more ways of communicating with the program
being debugged (such as TCP/IP).  Future versions may include
programming commands (loops, conditionals, and functions with
arguments).<P>
Work has been done on support for debugging parallel programs.  We hope
to get the code for this and eventually merge it.<P>
<LI>
<B>C Compiler</B>
<P>
The GNU C compiler (GCC) version 1 is now quite reliable.  It supports
ANSI standard C.  NeXT builds its entire system with GCC, including its
port of the Mach kernel and NFS.  The Open Software Foundation uses GCC
as the compiler in their operating system, Data General uses it for
their Aviion 88000-based workstation, Intel uses it for their 960
microprocessor, Commodore-Amiga uses it for Amiga Unix, Mt. Xinu
includes it in their Mach-based Unix for 386 computers, and Berkeley is
adding it to the BSD distribution.  GCC has compiled a System V.3 kernel
and all of the BSD source tree including the kernel.<P>
Version 1 is being maintained solely to fix bugs.  New work is directed
to version 2, which now has instruction scheduling, a certain amount of
CSE between basic blocks, and a new feature for classifying
instructions.  Function-wide CSE is being finished, as is loop
unrolling.<P>
GCC version 2 can generate code for the Acorn, AMD 29000, IBM PC/RT, IBM
RS/6000, &#38; Motorola 88000 as well as many of the machines supported by
version 1.  Ports for the IBM 370, HP Spectrum, TRON, &#38; NCUBE are
coming.  More general calling conventions are supported.  On the Sparc,
for example, GCC can now use the conventions for structure arguments and
values.  Not all of the version 1 machine descriptions have as yet been
updated; some do not work, and others do not fully use instruction
scheduling and delay slots.<P>
Version 2 supports both C<CODE>++</CODE> and Objective C on the same basis as
C itself: the source file name selects the language.  Michael Tiemann of
Cygnus Support has written the C<CODE>++</CODE> front end for GCC (which is
available in version 1 as G<CODE>++</CODE>).  The front end for compiling
Objective C programs has been donated by NeXT, but we need someone to
write the support to run them.  C has been extended to support nested
functions, nonlocal gotos, and the ability to determine the address of a
label.<P>
Volunteers are developing front ends for Fortran, Modula 3, Pascal, and
(slowly) for Ada.  There are mumblings about various other languages.
So far, no one has volunteered to write Cobol.<P>
Please do not call for more information on version 2 until it's
released.<P>
<LI>
<B>C Library</B>
<P>
Roland McGrath and others continue to work on the C Library.  It now
contains all of the ANSI C and POSIX.1 functions, and work is in
progress on POSIX.2 and Unix functions (BSD and System V).  Mike Haertel
has written a fast <CODE>malloc</CODE>.  The GNU regular-expression
functions (<CODE>regex</CODE>) now mostly conform to the POSIX.2
standard.<P>
<LI>
<B>Ghostscript</B>
<P>
The current version of Ghostscript is 2.3.  Recent changes include:
large speedups, especially for the X driver; support for all the
PostScript extended color operators, including colorimage; much more
accurate graphics algorithms; "band list" technology that allows
Ghostscript to drive high resolution printers with limited memory; and
"save" and "restore", which were the major elements of the
PostScript language not implemented before.<P>
Right now, Ghostscript accepts commands in PostScript and executes them
by drawing on an X window or by writing a file that can be directly
printed.  GNU volunteers are working on previewers for multi-page files;
we hope one will be available soon.<P>
Ghostscript also includes a C-callable graphics library (for client
programs that do not want to deal with the PostScript language), and
also supports IBM PCs and compatibles with EGA or VGA graphics (but
do not ask the FSF staff any questions about this; we do not use PCs
and do not have time to learn anything about them).<P>
<LI>
<B>GNU Graphics</B>
<P>
The GNU graphics utilities are a set of programs for plotting scientific
data.  They provide support for displaying GNU plot files on Tektronix
4010, PostScript, and X window system compatible output devices.<P>
<LI>
<B>JACAL</B>
<P>
Aubrey Jaffer is writing JACAL, a symbolic mathematics system.
Currently, it can eliminate variables from sets of equations, substitute
for variables, simplify expressions containing radicals, do some matrix
operations, and compute derivatives.<P>
JACAL runs in Scheme or Common Lisp.  A small and fast Scheme
implementation for JACAL which runs on Unix, VMS, and MS-DOS machines is
available via anonymous FTP from <CODE>altdorf.ai.mit.edu</CODE> as the
file <TT>`archive/scm/scm2d.tar.Z'</TT>.  JACAL is available from
<CODE>altdorf</CODE> as <TT>`archive/scm/jacal0-2.tar.Z'</TT>.  The
Internet address is <CODE>18.43.0.246</CODE><P>
To receive an IBM PC floppy disk with the source and executable files,
send $50 to Aubrey Jaffer, 84 Pleasant St., Wakefield MA 01880,
USA.<P>
<LI>
<B>groff</B>
<P>
James Clark has written <CODE>groff</CODE>---GNU <CODE>troff</CODE> and related
programs.  Currently, <CODE>groff</CODE> includes <CODE>troff</CODE>, <CODE>pic</CODE>,
<CODE>tbl</CODE>, <CODE>eqn</CODE>, drivers for Postscript and typewriter-like
devices, a driver producing TeX <CODE>dvi</CODE> format, an X11 previewer
(based on the MIT X11r4 <CODE>xditview</CODE>), and the <CODE>-man</CODE>,
<CODE>-ms</CODE>, and <CODE>-me</CODE> macros.  The <CODE>groff</CODE> program is written
in C<CODE>++</CODE>.  It has many features not found in most versions of
<CODE>troff</CODE> including: long names for strings, macros, diversions,
number registers, environments, and fonts; no fixed, arbitrary limits;
high-quality mathematical typesetting (using algorithms derived from
TeX); much better error handling; pairwise kerning; high-quality
hyphenation (using TeX's hyphenation algorithm); TeX support in
<CODE>pic</CODE>.<P>
Work is underway on the <CODE>-mm</CODE> macros and <CODE>refer</CODE>.  Possible
new projects include: the <CODE>grap</CODE> preprocessor (borrowing code from
<CODE>pic</CODE>); the <CODE>pm</CODE> page-makeup postprocessor and associated
<CODE>-mpm</CODE> macro package.  More work is needed on the documentation,
which now assumes that the user already has the Unix versions of the
documentation.<P>
<LI>
<B>Oleo</B>
<P>
Tom Lord is working on a spreadsheet named Oleo (because it's better
for you than the more expensive spreadsheet).<P>
Currently, Oleo reads and writes SC and Multiplan SYLK files, and it is
fairly simple to teach it new formats.  Oleo has a full set of
spreadsheet expressions as well as mathematical, financial, and string
functions.  It provides primitive macro support.  Keys may all be
rebound.<P>
Oleo uses the <CODE>curses</CODE> library and an X11 interface is planned.
Right now it runs on BSD Unix machines as well as IBM PCs and
compatibles.<P>
<LI>
<B>Berkeley and GNU project cooperating</B>
<P>
Besides GNU Emacs, the upcoming 4.4 BSD release will contain the C
compiler suite from the GNU project--GCC is better than the
alternative, supports ANSI C, and is freely available.<P>
4.4 BSD may contain GAWK as well.<P>
<LI>
<B>Some parts of BSD are becoming free</B>
<P>
The developers of Berkeley Unix decided several years ago to release
various parts of it (those which do not contain AT&#38;T code) separately as
free software.  This includes substantial programs which we hope to use
in GNU, such as TCP/IP.<P>
The freed parts of BSD are now on our compiler tape.<P>
</UL>
<P>
<H1><A NAME="SEC15" HREF="bull11a_toc.html#SEC15">GNU in Japan</A></H1>
<P>
Mieko, <CODE>h-mieko@sra.co.jp</CODE>, &#38; Nobuyuki Hikichi,
<CODE>hikichi@sra.co.jp</CODE>, continue to work on the GNU Project in
Japan.  They translate GNU information, write columns, request
donations, and consult with people about GNU.  Recently they translated
version one of the GNU General Public License into Japanese.  They
are now looking for a lawyer to volunteer to review their translation of
the new GNU Library General Public License.<P>
Many groups in Japan are redistributing GNU software, including JUG (a
PC user group), Nikkei Business Publications and ASCII (publishers),
Fujitsu FM Towns, and the Japan Unix Society.  Anonymous UUCP is
also now available in Japan.  Contact <CODE>toku@dit.co.jp</CODE> for more
information.<P>
<H1><A NAME="SEC16" HREF="bull11a_toc.html#SEC16">GNU Wish List</A></H1>
<P>
Wishes for this issue are for:<P>
<UL>
<LI>
Companies to lend us capable programmers and technical writers for at
least six months.  True wizards may be welcome for shorter periods, but
we have found that six months is the minimum time for a good programmer
to finish a worthwhile project.<P>
<LI>
Professors who might be interested in sponsoring or hosting research
assistants to do GNU development, with FSF support.<P>
<LI>
Someone to finish the <CODE>smail</CODE> mail delivery system.<P>
<LI>
A Sun QIC-150 cartridge tape drive; hard disks for IBM RTs.<P>
<LI>
Volunteers to help write programs and documentation.  Send mail to
<CODE>gnu@prep.ai.mit.edu</CODE> for the task list and coding
standards.<P>
<LI>
Speech and character recognition software (if the devices aren't too
weird), with the device drivers (if possible).  This would help the
productivity of at least one partially disabled programmer we
know.<P>
<LI>
Ideas for good articles in future GNU's Bulletins.  We particularly like
to highlight organizations involved with free information
exchange.<P>
<LI>
Copies of newspaper and journal articles mentioning the GNU Project or
GNU software.  Send these to the address on the front cover, or send a
citation to <CODE>gnu@prep.ai.mit.edu</CODE>.<P>
<LI>
Money, as always.  Please remember, donations are tax-deductible.  With
the latest donations, we have been able to expand our staff again.  With
the increased staff we have an even greater need for donations.<P>
One way to give us a small amount of money is to order a distribution
tape or two.  This may not count as a donation for tax purposes, but it
can qualify as a business expense.<P>
</UL>
<P>
<H1><A NAME="SEC17" HREF="bull11a_toc.html#SEC17">Help Keep Government Software Free</A></H1>
<P>
by Richard Stallman
<P>
For 200 years, the US copyright system has placed everything written by
the federal government in the public domain.  This makes sense: we have
all paid for it, so we should all own it.<P>
Now there is a move to change this.  If it succeeds, quite a lot of
software that would be free today will be sold instead.  We will pay to
develop the software, and then we'll have to pay again to use it.  And
the GNU system won't be able to use it, since it won't be free.<P>
We think this is scandalous.  If you agree, please help prevent it, by
writing to Congress:<P>
<PRE>
House Subcommittee on Intellectual Property
2137 Rayburn Building
Washington, DC 20515
</PRE>
<P>
<H1><A NAME="SEC18" HREF="bull11a_toc.html#SEC18">GNU Software Available Now</A></H1>
<P>
We offer Unix software source distribution tapes in <CODE>tar</CODE> format,
including the special cartridge tapes used by HP/UX and IBM RS/6000
systems (an Emacs binary is on the RS/6000 tape).  We also offer VMS
tapes for GNU Emacs and GNU C that include sources and VMS
executables.<P>
See the order form inside the back cover for details about media, etc.
Note that the contents of the 1600bpi 9-track tapes and cartridge tapes
for UNIX systems are the same.  Only the media are different.<P>
<H3><A NAME="SEC19" HREF="bull11a_toc.html#SEC19">Contents of the Emacs Tape</A></H3>
<P>
The software on this release tape is considered fairly stable, but as
always, we welcome your bug reports.<P>
<UL>
<LI>
<B>GNU Emacs</B>
<P>
In 1975, Richard Stallman developed the first Emacs, an extensible,
customizable real-time display editor.  GNU Emacs is his second
implementation of Emacs.  It's the first Emacs available on Unix
systems that offers true Lisp--smoothly integrated into the
editor--for writing extensions.  It also provides a special interface
to MIT's free X window system.  The current version of Emacs is
18.57.<P>
GNU Emacs has been in widespread use since 1985 and often displaces
proprietary implementations of Emacs because of its greater reliability
as well as its additional features and easier extensibility.  DEC,
Berkeley, and NeXT are all distributing Emacs with their systems.<P>
GNU Emacs (as of version 18.57) runs on many Unix systems: Alliant,
Altos 3068, Amdahl (UTS), Apollo, AT&#38;T (3B machines &#38; 7300 PC), CCI 5/32
&#38; 6/32, Celerity, Convex, Digital (DECstation 3100; DECstation 5000;
Vax (BSD, System V, or VMS)), Motorola Delta (System V/68 release
3), Dual, Elxsi 6400, Encore (DPC, APC, &#38; XPC), Gould, HP (9000 series
200, 300 700, &#38; 800 (Spectrum) but not series 500), HLH Orion 1/05, IBM
(RT/PC (4.2 &#38; AIX); PS/2 (AIX (386 only)) &#38; RS/6000 (AIX)),
Integrated Solutions (Optimum V with 68020 &#38; VMEbus), Intel
80386 (BSD, Microport, System V, Xenix &#38; PS/2); not MS-DOS), Iris (2500,
2500 Turbo, &#38; 4D), LMI (Nu), Masscomp, MIPS, National Semiconductor
32000, NCR (Tower 32), Nixdorf Targon 31, Plexus, Pmax, Prime EXL,
Pyramid, Sequent (Balance &#38; Symmetry), SONY News, Stride (system release
2), Sun (1, 2, 3, 4, SparcStation, &#38; 386i), Stardent 1500 &#38; 3000,
Tahoe, Tandem Integrity S2, Tektronix (NS32000 &#38; 4300), Texas
Instruments (Nu), Titan P2 &#38; P3, Ustation E30 (SS5E), Wicat, and
Whitechapel (MG1).<P>
GNU Emacs is described by the <CITE>GNU Emacs Manual</CITE> and the <CITE>GNU
Emacs Lisp Reference Manual</CITE>, which come with the software in Texinfo
source (see "GNU Documentation" below).<P>
<LI>
<B>MIT Scheme</B> and <B>Yale T</B>
<P>
T is a variant of Scheme developed at Yale University; it is intended
for production use in program development.  T contains a native-code
optimizing compiler that produces code that runs at speeds
comparable to the speeds of programs written in conventional
languages.  It runs on BSD Vaxes, 680x0 systems, Sparc workstations,
MIPS R2000 workstations (including the Decstation 3100), and NS32000
machines (including the Encore Multimax).  T is written in itself and
cannot be bootstrapped without a binary (included), but it is great if
you can use it.  Some documentation is included.<P>
<LI>
<CODE>texi2roff</CODE>
<P>
<CODE>texi2roff</CODE>, written by Beverly Erlebacher, translates GNU Texinfo
files so that they can be printed by the <CODE>[gnt]roff</CODE> programs
utilizing the <CODE>mm</CODE>, <CODE>ms</CODE>, or <CODE>me</CODE> macro packages.  It is
included on all UNIX tapes so people who do not have a copy of TeX can
print out GNU documentation.<P>
<LI>
<B>Debugger</B>
<P>
Version 3.5 of GDB, the GNU debugger, runs under BSD 4.2 and 4.3 on
Vaxes and Suns (2, 3, 4, &#38; SparcStation), Altos, Convex, HP 9000/300's
under BSD, HP 9000/320's under HP/UX, System V 386 machines (with either
GNU or native object file format), ISI Optimum V, Merlin under Utek 2.1,
SONY News, Gould NPL &#38; PN machines, Pyramid, Sequent Symmetry (a 386
based machine), and Encore under Umax 4.2.<P>
GDB features incremental reading of symbol tables (for fast startup and
less memory use), command-line editing, the ability to call functions in
the program being debugged, remote debugging over a serial line, a value
history, and user-defined commands.  It can be used to debug C,
C<CODE>++</CODE>, and Fortran programs.  It comes with a Texinfo manual (see
"GNU Documentation" below).<P>
<LI>
<B>Data Compression Software</B>
<P>
Some of the contents of our tape distribution are compressed;
currently indicated by a <TT>`.Z'</TT> suffix.  We include software on
the tapes to compress/decompress these files.  Due to patent
troubles with <CODE>compress</CODE>, we are beginning to switch to
<CODE>yabba</CODE>, indicated by a <SAMP>`.Y'</SAMP>.  The online distribution on
<CODE>prep.ai.mit.edu</CODE> will be changed first.  Each tape includes
the program that will uncompress the compressed files on it.<P>
<LI>
<B>GNU Chess and NetHack</B>
<P>
GNU Chess is a chess program, now at version 3.1.  It has text-only and
X display interfaces.  NetHack is a display--oriented adventure game
similar to Rogue.  We distribute NetHack Version 2.3.</UL>
<P>
<H3><A NAME="SEC20" HREF="bull11a_toc.html#SEC20">Contents of the Compiler Tape</A></H3>
<P>
The programs on this tape are becoming stable.  As always, we solicit
your comments and bug reports.  This tape used to be known as the
"Pre-Release" or "Beta Test" tape.<P>
<UL>
<LI>
<B>GNU CC</B> and <CODE>gperf</CODE>
<P>
The GNU C compiler is a fairly portable optimizing compiler.  It
supports full ANSI C.  The current version is 1.40.  It generates
good code for the 32000, 680x0, 80386, Alliant, Convex, Tahoe, and Vax
CPUs, and for these RISC CPUs: i860, Pyramid, Sparc, and SPUR.  The MIPS
RISC CPU is also supported.  Machines using these CPUs include 386
(AIX), Alliant FX/8, Altos 3068, Apollo 68000/68020 (Aegis), AT&#38;T 3B1,
Convex C1 and C2, DECstation 3100 and 5000, DEC VAX, Encore MultiMax
(NS32000), Genix NS32000, Harris HCX-7 and HCX-9, HP-UX
68000/68020, HP (BSD), IBM PS/2 (AIX), Intel 386 (System V, Xenix,
BSD, but not MS-DOS), Iris MIPS machine, ISI 68000/68020, MIPS, NeXT,
Pyramid, Sequent Balance (NS32000), Sequent Symmetry (i386), SONY
News, Sun (2, 3 (optionally with FPA), 4, SparcStation, &#38; Sun386i).  See
"GNU Project Status Report" for more detail.<P>
A good programmer will be able to make a cross compiler on most of these
systems to cross-compile to most of these architectures.  Most of the
work will be with the compiler support tools, not GCC itself.<P>
The Texinfo source of the <CITE>GCC Manual</CITE> is included with the
compiler.  The manual (not yet published on paper) describes how to run
and install the GNU C compiler, and how to port it to new processors.
It describes new features and incompatibilities of the compiler, but
people not familiar with C will also need a good book on C.  A perfect
hash-table generation utility, <CODE>gperf</CODE>, is also included with the
compiler.<P>
<LI>
<B>Assembler, Object File Utilities,</B> <B>dld,</B> and <B>COFF Support</B>
<P>
The GNU assembler (GAS) is a fairly portable, one pass assembler that is
almost twice as fast as Unix <CODE>as</CODE>.  It is now at version 1.38.1 and
works for 32x32, 680x0, 80386, Sparc (Sun 4), and Vax.<P>
We have free versions of <CODE>ar</CODE>, <CODE>ld</CODE>, <CODE>nm</CODE>, <CODE>size</CODE>,
<CODE>gprof</CODE>, <CODE>strip</CODE>, and <CODE>ranlib</CODE>.  The GNU linker <CODE>ld</CODE>
is fast and the only linker with source-line numbered error
messages for multiply-defined symbols and undefined references.<P>
We also now distribute a dynamic linker, <CODE>dld</CODE>, written by W.
Wilson Ho.  This is a library which you link with your program which
then enables it to dynamically load object files into the running
binary.<P>
The entire suite of GNU software tools can be run on System V,
replacing COFF entirely.  The GNU tools can operate on BSD object
files with a COFF header the System V kernel will accept.
<CODE>robotussin</CODE> is supplied for converting standard libraries to this
format.<P>
<LI>
<CODE>flex</CODE> and <B>Bison</B>
<P>
<CODE>flex</CODE> is a mostly-compatible replacement for the Unix <CODE>lex</CODE>
scanner generator written by Vern Paxson of the Lawrence Berkeley
Laboratory.  <CODE>flex</CODE> generates far more efficient scanners than
<CODE>lex</CODE> does.  Bison is an upwardly compatible replacement for
the parser generator Yacc, with additional features.  The <CITE>Bison
Manual</CITE> comes with the software in Texinfo form (see "GNU
Documentation" below).<P>
<LI>
<B><CODE>g++</CODE>, <CODE>libg++</CODE>,</B> and <B>NIH Class Library</B>
<P>
G<CODE>++</CODE> is a set of changes for GCC that compiles C<CODE>++</CODE>, the
well-known object-oriented language.  As far as possible, G<CODE>++</CODE> is
kept compatible with the evolving draft ANSI standard, but not with
<CODE>cfront</CODE>, as the latter has been diverging from ANSI.  G<CODE>++</CODE> comes
with the <CITE>GNU G<CODE>++</CODE> Users Guide</CITE> (not yet published on paper).
G<CODE>++</CODE> compiles source quickly, provides good error messages, and
works well with GDB.  Since G<CODE>++</CODE> depends on GCC, it must be used
with the correspondingly numbered version of GCC.  GDB Version 3
includes support for debugging C<CODE>++</CODE> code, which merges in the
functionality of the old program GDB<CODE>+</CODE>.<P>
The GNU C<CODE>++</CODE> library, <CODE>libg++</CODE>, is an extensive, documented
collection of C<CODE>++</CODE> classes and support tools for use with
G<CODE>++</CODE>.<P>
The NIH Class Library (formerly known as OOPS (Object-Oriented Program
Support)) is a portable collection of classes similar to those in
Smalltalk-80 that has been developed by Keith Gorlen of NIH, using the
C<CODE>++</CODE> programming language.<P>
Note that Interviews has been dropped from this tape since it appears on
the "optional" X tape (See "Contents of the X11 Tapes"
below).<P>
<LI>
<B><CODE>make</CODE></B> and <B>BASH</B>
<P>
GNU <CODE>make</CODE> has 99.44% of the features of the BSD and System V
versions of <CODE>make</CODE>, and compiles with POSIX.2, as well as many of
our own extensions.  These extensions include parallelism, conditional
execution, and text manipulation.  Version 3.62 of GNU <CODE>make</CODE> is
fairly stable.  Version 4 will include many functional improvements.
Texinfo source for the GNU <CODE>make</CODE> manual is provided (see "GNU
Documentation" below).<P>
The GNU Shell, BASH (for Bourne Again SHell), is compatible with
with the Unix <CODE>sh</CODE> and offers many extensions found in <CODE>csh</CODE>
and <CODE>ksh</CODE>.  It has job control, <CODE>csh</CODE>-style command history,
and command-line editing (with Emacs and <CODE>vi</CODE> modes built-in and
the ability to rebind keys).  The current version is 1.08, and should
compile on most systems.<P>
<LI>
<B>GAWK</B> and <CODE>tar</CODE>
<P>
GAWK is GNU's version of the Unix AWK utility and is currently at
version 2.13; it comes with a Texinfo manual (see "GNU
Documentation" below).  GNU <CODE>tar</CODE> includes 
multivolume support, the ability to archive sparse files, automatic
compression and decompression of archives, remote archives, and
special features to allow <CODE>tar</CODE> to be used for incremental and full
backups.  The current version is 1.10.<P>
<LI>
<B>RCS</B> and <B>CVS</B>
<P>
The Revision Control System, now at version 5.5, is used for version
control and management of large software projects.  The
Concurrent Version System, CVS, manages software revision and
release control in a multi-developer, multi-directory, multi-group
environment.  It works best on top of RCS Versions 4 and above, but
will parse older RCS formats with the loss of CVS's fancier
features.  See Berliner, Brian, "CVS-II: Parallelizing Software
Development," <CITE>Proceedings of the Winter 1990 USENIX
Association Conference.</CITE><P>
<LI>
<B><CODE>diff</CODE></B> and <B><CODE>grep</CODE></B>
<P>
These programs are GNU's versions of the Unix programs of the same name.
They are much faster than their traditional Unix counterparts.<P>
<LI>
<B>Ghostscript</B> and <B><CODE>gnuplot</CODE></B>
<P>
Ghostscript is GNU's graphics language that is almost fully compatible
with Postscript.  See the section in the "GNU Project Status
Report."<P>
<CODE>gnuplot</CODE> version 3.0 is an interactive program for plotting
mathematical
expressions and data.  Oddly enough, the program was neither done for
nor named for the GNU Project--the name is a coincidence.<P>
<LI>
<B>Freed Files from the U.C. Berkeley 4.3-tahoe Release</B>
<P>
These files have been declared by Berkeley to be free of AT&#38;T code, and
may be freely redistributed.  They include complete sources for some
programs and library routines; and partial sources for many
others.<P>
We are not yet distributing the files marked free on the 4.3-reno
release.  When Berkeley releases its next tape, we plan to distribute
the free files from it instead of the 4.3-tahoe files.  Note that much
more will be free on that tape than currently on the 4.3-tahoe or
4.3-reno tapes.<P>
<LI>
<B>File Utilities</B> and <B>Miscellaneous</B>
<P>
The file utilities are now included here.  GNU <CODE>indent</CODE> has been
added to this tape as well.  We also include <CODE>perl</CODE> version 4.0,
<CODE>c-perf</CODE> version 2.0 (a C version of <CODE>g-perf</CODE>), <CODE>f2c</CODE>
(a Fortran to C translator), <CODE>gdbm</CODE> library, GNU <CODE>indent</CODE>,
data compression software, GDB, <CODE>texi2roff</CODE>, and GnuGo (the game of
Go (Wei-Chi)) on this tape.</UL>
<P>
<H3><A NAME="SEC21" HREF="bull11a_toc.html#SEC21">Contents of the X11 Tapes</A></H3>
<P>
The two X11 tapes contain Version 11, Release 5 of the MIT X window
system.  The first FSF tape contains all the core software,
documentation, and some contributed clients.  FSF refers to its first
tape as the `required' X tape since it is necessary for running X or GNU
Emacs under X.<P>
The second, `optional,' FSF tape contains contributed libraries and
other toolkits, the Andrew software, games, etc.<P>
You can still order the Version 11, Release 4 required and optional
tapes from FSF.<P>
<H3><A NAME="SEC22" HREF="bull11a_toc.html#SEC22">VMS Emacs and Compiler Tapes</A></H3>
<P>
We offer a VMS tape of the GNU Emacs editor, and a separate VMS tape
containing the GNU C compiler.  The VMS compiler tape also contains
Bison (needed to compile GCC), GAS (needed to assemble GCC's output),
and some library and include files.  Both VMS tapes include executables
from which you can bootstrap, because the DEC VMS C compiler has bugs
and cannot compile GCC.<P>
Please do not ask us to devote effort to additional VMS support, because
it is peripheral to the GNU Project.<P>
<H1><A NAME="SEC23" HREF="bull11a_toc.html#SEC23">GNU Documentation</A></H1>
<P>
GNU manuals are intended to explain the underlying concepts, describe
how to use all the features of each program, and give examples of
command use.  These manuals, provided with our software, are also
available in hardcopy; see the order form inside the back cover.<P>
GNU documentation is distributed as Texinfo source files, which yield
both typeset hardcopy and on-line presentation via the menu-driven Info
system.  The <B>Texinfo Manual</B> explains the markup language used to do
these.  It tells you how to make tables, lists, chapters, nodes, indices,
and cross references, and how to use Texinfo mode in GNU Emacs and catch
mistakes.<P>
The <B>GDB Manual</B> explains how to use the GNU Debugger.  It describes
running your program under debugger control, how to examine and alter
data as well as modify the flow of control within the program, and how
to use GDB through GNU Emacs, with auto-display of source lines.<P>
The <B>Emacs Manual</B> describes the use of GNU Emacs.  It also explains
advanced features, such as outline mode and regular expression search.
The manual details special modes for programming in languages such as C
and Lisp, how to use the tags utility, how to compile and correct code,
and how to make your own keybindings and other elementary
customizations.<P>
The <B>Emacs Lisp Reference Manual</B> covers the GNU Emacs Lisp
programming language in great depth.  It goes into data types,
control structures, functions, macros, byte compilation, keymaps,
windows, markers, searching and matching, modes, syntax tables, and
operating system interface, etc.<P>
The <B>Termcap Manual</B>, often described as "Twice as much as you ever
wanted to know about Termcap," details the format of the Termcap
database, the definitions of terminal capabilities, and the process of
interrogating a terminal description.  This manual is primarily for
programmers.<P>
The <B>Bison Manual</B> teaches how to write grammars that convert into C
coded parsers.  You need no prior knowledge of parser generators.
The concepts are described along with a series of increasingly
complex examples.<P>
The <B>GAWK Manual</B> describes how to use the GNU implementation of AWK.
It is written for someone who has never used AWK, and describes all the
features of this powerful string manipulation language.<P>
The <B>Make Manual</B> describes GNU Make, a program used to rebuild parts
of other programs when and as needed.  The manual covers makefile
writing, which specifies how a program is to be compiled and its
dependencies.<P>
<H1><A NAME="SEC24" HREF="bull11a_toc.html#SEC24">How to Get GNU Software</A></H1>
<P>
All the software and publications from the Free Software Foundation are
distributed with permission to copy and redistribute.  The easiest way
to get GNU software is to copy it from someone else who has it.<P>
If you have Internet access, you can get the latest software via
anonymous FTP from the host <CODE>prep.ai.mit.edu</CODE> (the IP address
is <CODE>18.71.0.38</CODE>).  Get file
<TT>`/pub/gnu/GETTING.GNU.SOFTWARE'</TT> for more information.<P>
If you cannot get the software one of these ways, or if you would like
to contribute some funds to our efforts and receive the latest versions,
we distribute tapes for a copying and distribution fee.  See the order
form below.<P>
There are also third party groups that distribute our software: they do
not work with us, but have our software in other forms.  For your
convenience, we list some of them here (also see "Free Software for
Microcomputers" below).  Please note that the Free Software Foundation
is <I>not</I> affiliated with them in any way, and is not responsible for
either the currency of their versions or the swiftness of their
responses.<P>
These TCP/IP Internet sites provide GNU software via anonymous
<CODE>ftp</CODE> (use your <CODE>ftp</CODE> program, user name: <CODE>anonymous</CODE>,
password: <VAR>your name</VAR>):<P>
<PRE>
wsmr-simtel20.army.mil (under <TT>`PD:&#60;UNIX-C.GNU&#62;'</TT>),
ftp.cs.titech.ac.jp, louie.udel.edu, 
ftp.funet.fi, sunic.sunet.se, ftp.diku.dk, mcsun.eu.net,
gatekeeper.dec.com, mango.rsmas.miami.edu (VMS G<CODE>++</CODE>),
cc.utah.edu (VMS GNU Emacs), labrea.stanford.edu,
scam.berkeley.edu, itstd.sri.com, wuarchive.wustl.edu,
jaguar.utah.edu, a.cs.uiuc.edu, and ftp.uu.net.
</PRE>
<P>
Those on the SPAN network can ask <TT>rdss::corbet</TT>.<P>
Information on how to obtain some GNU programs using UUCP is available
via electronic mail from the following people.  Ohio State also posts
their UUCP instructions regularly to newsgroup <CODE>comp.sources.d</CODE> on
USENET.<P>
<PRE>
hao!scicom!qetzal!upba!ugn!nepa!denny, uunet!hutch!barber,
acornrc!bob, hqda-ai!merlin, postmaster@ftp.uu.net,
src@scuzzi.in-berlin.org, james@bigtex.cactus.org,
and uucp@archive.cis.ohio-state.edu
</PRE>
<P>
<H1><A NAME="SEC25" HREF="bull11a_toc.html#SEC25">Free Software for Microcomputers</A></H1>
<P>
We do not provide support for GNU Software on microcomputers because
it is peripheral to the GNU Project.  However, we are willing to
publish information about groups who do so.  If you are aware of any
such efforts, please send the details, including archive sites and
mailing lists, to <CODE>gnu@prep.ai.mit.edu</CODE> or the postal address
on the front cover.<P>
<UL>
<P>
<LI>
<B>GNU Software on Apple computers</B>
<P>
In lawsuits, Apple claims the power to stop people from writing any
program that has a user interface that works even vaguely like the
Macintosh's.  If Apple triumphs in the courts, it will create for
itself a new power over the public that will enable it to put an end to
free software.  So long as Apple continues to try to establish this kind
of monopoly, we will not provide any support for Apple machines.<P>
<LI>
<B>GNU Software on the Amiga</B>
<P>
Ports to the Amiga of many GNU Programs can be anonymously ftped from:
USA, <CODE>karazm.math.uh.edu</CODE> directory <TT>`~pub/Amiga/Gnu'</TT>
and <CODE>titan.ksc.nasa.gov</CODE>, directory <TT>`~pub/amiga'</TT>;
Europe, <CODE>ftp.funet.fi</CODE>, directory <TT>`~pub/amiga/gnu'</TT>.
Offers to help and info on: the GCC port and related projects to Leonard
Norrgard, <CODE>vinsci@nic.funet.fi</CODE>; and the GNU Emacs port to:
Mark D. Henning, <CODE>henning@stolaf.edu</CODE>.  More information is in
<TT>`/pub/gnu/MicrosPorts/Amiga'</TT>, obtainable via anonymous
<CODE>ftp</CODE> on <CODE>prep.ai.mit.edu</CODE>.<P>
<LI>
<B>GNU Software on the Atari</B>
<P>
Ports to Atari TOS and Atari Minix of many GNU Programs are available
via anonymous <CODE>ftp</CODE> from <CODE>atari.archive.umich.edu</CODE> which
is maintained by Howard Chu, <CODE>hyc@hanauma.jpl.nasa.gov</CODE>.  These
ports are discussed on the two USENET newsgroups
<CODE>comp.sys.atari.st</CODE> and <CODE>comp.sys.atari.st.tech</CODE>.  To
get the former group via e-mail, you can ask
<CODE>info-atari16-request@score.stanford.edu</CODE>.<P>
<LI>
<B>GNUish MS-DOS project</B>
<P>
Contact <CODE>info-gnu-msdos-request@sun.soe.clarkson.edu</CODE> for
information on ports of GNU programs to MS-DOS and related mailing
lists.  More information is in <TT>`/pub/gnu/MicrosPorts/MSDOS'</TT>,
obtainable via anonymous <CODE>ftp</CODE> on
<CODE>prep.ai.mit.edu</CODE>.<P>
<LI>
<B>Freemacs, an Extensible Editor for MS-DOS</B>
<P>
by Russ Nelson, <CODE>nelson@sun.soe.clarkson.edu</CODE>
<P>
I have written a small but programmable editor for MS-DOS that is
somewhat compatible with GNU Emacs.  It is called Freemacs, and is
programmed in "MINT", a string processing language, but tries to
emulate GNU Emacs.  It does a remarkably good job for a 21K
executable--good enough, in fact, that I recommend that Freemacs users
buy the GNU Emacs manual.  Of course, the bulk of the emulation is
done in the MINT code, totaling 150K.<P>
You may freely copy this software.  I ask only that you return
improvements to me for incorporation into the package for all of
us.
The distribution is available from these sources:
anonymous <CODE>ftp</CODE> the file <TT>`/e/freemacs'</TT> from host
<CODE>grape.ecs.clarkson.edu</CODE> or from host
<CODE>wsmr-simtel20.army.mil</CODE> (under directory
<TT>`PD:&#60;MSDOS.FREEMACS&#62;'</TT>); or
<CODE>CUHUG BBS: (315)268-6667</CODE> 1200/2400 8N1, 24 hrs, file area 25, no
registration required to download Freemacs; or
send $15 (copying fee) to Russ Nelson, 11 Grant St., Potsdam, NY 13676,
Phone: (315) 268-6455, specify floppy format: <CODE>5.25"/1.2 MB</CODE>;
<CODE>5.25"/360K</CODE>; or <CODE>3.50"/720K.</CODE><P>
Please do <I>not</I> ask the Free Software Foundation about Freemacs.  FSF
does <I>not</I> maintain it, and has no information on it other than the
above.</UL>
<P>
<H1><A NAME="SEC30" HREF="bull11a_toc.html#SEC30">Thank GNUs</A></H1>
<P>
Thanks to all those mentioned above in "GNUs Flashes", the "GNU
Project Status Report" and "GNU Software Available Now".<P>
Thanks to <B>Interleaf, Inc.</B> for the loan of a Xerox 7650 Scanner.
<P>
Thanks to <B>NCD corporation</B> for the gift of an X terminal. 
<P>
Thanks to <B>Mr. Ken'ichi Handa</B> for his donation from the Motooka
prize.  He won the prize coordinating the development of Nemacs, the
Japanese version of GNU Emacs.  He used the rest of the prize to throw a
thank-you party for all the Nemacs volunteers.<P>
Thanks to <B>Julie Sussman</B> for major work on the BASH manual (not
yet released), and to <B>Chet Ramey</B> for his continuing work on
improving BASH.<P>
Thanks to the anonymous GNU users in Japan for their gifts.<P>
Thanks to <B>ASCII</B> <B>Corporation</B> and <B>Village Center
Inc</B> both of Japan for their donations.<P>
Thanks to an anonymous donor for the gift of 5 IBM RT computers.<P>
Thanks to <B>Munin</B> <B>Technologies</B> for their donation of a
VAX-11/750 and other DEC equipment.<P>
Thanks to <B>Clement Moritz</B> for donating two reel to reel tape
drives.<P>
Thanks to <B>Cygnus</B> <B>Support</B> for continuing to improve
various programs and for hosting Joseph Arceneaux, as well as other FSF
staff.<P>
Thanks to the <B>Artificial</B> <B>Intelligence</B> <B>Laboratory</B>
and the <B>Laboratory</B> <B>for</B> <B>Computer</B> <B>Science</B> at
<B>MIT</B> for their invaluable assistance of many kinds.<P>
Thanks to <B>Devon</B> <B>McCullough</B> for technical assistance, to
<B>Carol</B> <B>Botteron</B> for proofreading and other assistance,
and to <B>Mieko</B> and <B>Nobuyuki</B> <B>Hikichi</B> for their
invaluable help raising both funds and consciousness in Japan.<P>
Thanks go out to all those who have either lent or donated machines,
including <B>Hewlett-Packard</B> for six 68030 workstations, two
80486 computers, and four Spectrum workstations, <B>Brewster Kahle</B>
of Thinking Machines Corp. for the Sun 4/110, <B>K. Richard
Pixley</B> for the AT&#38;T Unix PC, <B>Doug Blewett</B> of AT&#38;T Bell Labs
for two Convergent Miniframes, CMU's <B>Mach</B> <B>Project</B> for
the Sun 3/60, <B>Intel Corp.</B> for their 386 machine, <B>NeXT</B>
for their workstation, the <B>MIT</B> <B>Media</B> <B>Laboratory</B>
for the Hewlett-Packard 68020 machine, <B>SONY</B> <B>Corp.</B> and
<B>Software</B> <B>Research</B> <B>Associates</B>, Inc., both of
Tokyo, for three SONY News workstations, <B>IBM</B> <B>Corp.</B> for
an RS/6000 computer, the <B>MIT</B> <B>Laboratory</B> <B>of</B>
<B>Computer</B> <B>Science</B> for the DEC Microvax, the <B>Open</B>
<B>Software</B> <B>Foundation</B> for the Compaq 386, and <B>Delta
Microsystems</B> for an Exabyte tape drive.<P>
Thanks to all those who have contributed ports and extensions, as well
as those who have contributed other source code, documentation, and good
bug reports.  Thanks to those who sent money and offered help.  Thanks
also to those who support us by ordering manuals and distribution
tapes.<P>
The creation of this bulletin is our way of thanking all who have
expressed interest in what we are doing.<P>
<HR>
<P>
<PRE>
                                                -------
                                               |       |
Free Software Foundation, Inc.                 | stamp |
675 Massachusetts Avenue                       |       |
Cambridge, MA  02139  USA                      | here  |
                                               |       |
                                                -------
</PRE>
